package cn.growthgate.fgo.common.base;

import java.util.List;

import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;

public interface BaseService<T> extends IService<T> {
	
	public List<T> selectAll();

	public Page<T> selectPage(Integer current, Integer size, Wrapper<T> wrapper);
	
	public Page<T> selectPage(Integer current, Integer size, String orderByField, Boolean isAsc, Wrapper<T> wrapper);
	
	public List<T> selectList(String orderByField, Boolean isAsc, Wrapper<T> wrapper);

	public BaseVo<T> transformVo(T entity);

	public List<BaseVo<T>> transformVo(List<T> list);

	public Page<BaseVo<T>> transformVo(Page<T> page);

	public Wrapper<T> newWrapper();

}
